package com.share.finance.risk.core.model.db;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 * 风控变量默认值配置表
 * </p>
 *
 * @author author
 * @since 2022-12-25
 */
@Data
@Accessors(chain = true)
@TableName("cor_variate_conf")
public class VariateConf implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键: 自增
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    /**
     * 字段Id
     */
    @TableField(value = "field_id")
    private String fieldId;
    /**
     * 字段中文名Code
     */
    @TableField(value = "field_cn")
    private String fieldCn;
    /**
     * 接口号
     */
    @TableField(value = "int_id")
    private String intId;
    /**
     * 选取指标类型，1、直接选取 2、groovy脚本 3、衍生变量 4、接口状态变量
     */
    @TableField(value = "select_type")
    private Integer selectType;
    /**
     * 选取指标参数
     */
    @TableField(value = "json_path")
    private String jsonPath;
    /**
     * 选取指标参数
     */
    @TableField(value = "groovy_script")
    private String groovyScript;
    /**
     * 默认值(-888888表示因计算出错给的默认值)
     */
    @TableField(value = "default_val")
    private String defaultVal;
    /**
     * 指标类型：string, integer, double, boolean
     */
    @TableField(value = "var_type")
    private String varType;
    /**
     * 是否删除：0-未，1-已
     */
    private String status;
    /**
     * 创建时间
     */
    @TableField(value = "create_time")
    private Date createTime;


    //---前端展示
    @TableField(exist = false)
    private List<ProductVariate> productVariates;
}
